1. Field
The following description relates to an apparatus and a method for controlling virtual machine schedule time.
2. Description of the Related Art
A system virtualization technique allows a variety of operating systems (OSes) to run on a single physical device by representing hardware of the physical device as numerous pieces of virtualized hardware. Different types of OSes are enabled to run independently from one another in a virtualized environment provided by the virtualization.
A virtualization system may include a plurality of virtual machines (VMs) and a plurality of virtual machine monitors. A virtual machine scheduler of a virtual machine monitor may determine which virtual machine among a plurality of virtual machines will be run through a physical CPU. In addition, a process scheduler of each virtual machine may determine which process among a plurality of executable processes will be executed through a virtual CPU.
In a virtualized environment, two-level scheduling may be performed in which two schedulers generally have different targets to schedule and have scheduling policies and scheduling times independent from each other.
In a virtualized environment, independent scheduling times may cause problems as discussed below.
Execution of a real-time process may be delayed due to a virtual machine schedule of the virtual machine monitor.
A virtual machine schedule of the virtual machine monitor may suspend execution of a process that has been executing for a short period of time, and thereby context switch of the corresponding process may be futile.
When the virtual machine schedule of the virtual machine monitor suspends execution of process that is holding spin lock and another CPU, therefore, attempts to acquire the spin lock, a lock wait time may be incurred.